PHP: imagecopyresampled 您所在的位置:网站首页 PHP imagecopyresampled PHP: imagecopyresampled

PHP: imagecopyresampled

2024-06-17 06:56| 来源: 网络整理| 查看: 265

imagecopyresampled

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

imagecopyresampled — Копирование и изменение размера изображения с ресемплированием

Описание imagecopyresampled(    GdImage $dst_image,    GdImage $src_image,    int $dst_x,    int $dst_y,    int $src_x,    int $src_y,    int $dst_width,    int $dst_height,    int $src_width,    int $src_height): bool

imagecopyresampled() копирует прямоугольную часть одного изображения на другое изображение, интерполируя значения пикселов таким образом, чтобы уменьшение размера изображения не уменьшало его чёткости.

Другими словами, imagecopyresampled() берет прямоугольный участок из src_image с шириной src_width и высотой src_height на координатах src_x,src_y и помещает его в прямоугольный участок изображения dst_image шириной dst_width и высотой dst_height на координатах dst_x,dst_y.

Если координаты, ширина или высота исходного и конечного изображений различны, копируемый фрагмент будет растянут или сжат. Координаты отсчитываются от левого верхнего угла изображения. Функцию можно использовать для наложения участков на то же изображение, с которого они скопированы (если dst_image имеет то же значение, что и src_image), но если участки будут пересекаться, результат непредсказуем.

Список параметров

dst_image

Ресурс целевого изображения.

src_image

Ресурс исходного изображения.

dst_x

x-координата результирующего изображения.

dst_y

y-координата результирующего изображения.

src_x

x-координата исходного изображения.

src_y

y-координата исходного изображения.

dst_width

Результирующая ширина.

dst_height

Результирующая высота.

src_width

Ширина исходного изображения.

src_height

Высота исходного изображения.

Возвращаемые значения

Функция возвращает true в случае успешного выполнения или false, если возникла ошибка.

Список изменений Версия Описание 8.0.0 dst_image и src_image теперь ожидают экземпляр GdImage; ранее ожидался ресурс (resource). Примеры

Пример #1 Простой пример

В этом примере изображение будет сжато до половины исходного размера.

Вывод приведённого примера будет похож на:

Пример #2 Ресэмплирование изображения с сохранением пропорций

В этом примере изображение будет сжато до 200 пикселов по ширине или высоте, смотря что больше.

Вывод приведённого примера будет похож на:

Примечания

Замечание:

Существует проблема связанная с ограничениями палитровых изображений (255+1 цвет). Ресэмплирование или фильтрация изображения требует больше цветов, чем 255. Для расчёта нового пиксела и его цвета применяется некоторое приближение. В случае палитровых изображений мы пытаемся создать новый цвет, а если это не удаётся, мы выбираем ближайший (теоретически) вычисленный цвет. Это не всегда визуально ближайший цвет. Такой подход может давать в результате пустые (или визуально пустые) изображения. Для устранения этой проблемы, пожалуйста, используйте truecolor-изображения в качестве результирующих, создаваемые функцией imagecreatetruecolor().

Смотрите также imagecopyresized() - Копирование и изменение размера части изображения imagescale() - Масштабировать изображение по заданной ширине и высоте imagecrop() - Обрезать изображение до заданного прямоугольника


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有